package com.globaldom.model;

import java.io.Serializable;

import javax.jdo.annotations.Column;
import javax.jdo.annotations.NotPersistent;
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Persistent;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;

//@Configurable
@PersistenceCapable
public class Science implements Serializable {

	/**
	 * Phase 1 Increase civilians increase Defence of ARMY/TANK/... increase
	 * Attack of ARMY/TANK/.. Increase number of locations allowed Increase
	 * speed of gathering of food/oil/...
	 * 
	 * Phase 2
	 * 
	 * Reduce cost of market buy/sell
	 * 
	 * Phase 3 Allow creation of army variety
	 */
	@NotPersistent
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "id")
	private Long id;

	@Persistent
	private Integer researchType;
	@Persistent
	private Integer researchAmount;
	@Persistent
	private String researchImage;
	@Persistent
	private String researchSubject;
	@Persistent
	private String researchText;
	@Persistent
	private Integer researchValue;
	@Persistent
	private Integer minLevel;

	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Integer getResearchType() {
		return researchType;
	}

	public void setResearchType(Integer researchType) {
		this.researchType = researchType;
	}

	public Integer getResearchAmount() {
		return researchAmount;
	}

	public void setResearchAmount(Integer researchAmount) {
		this.researchAmount = researchAmount;
	}

	public String getResearchSubject() {
		return researchSubject;
	}

	public void setResearchSubject(String researchSubject) {
		this.researchSubject = researchSubject;
	}

	public Integer getResearchValue() {
		return researchValue;
	}

	public void setResearchValue(Integer researchValue) {
		this.researchValue = researchValue;
	}

	public Integer getMinLevel() {
		return minLevel;
	}

	public void setMinLevel(Integer minLevel) {
		this.minLevel = minLevel;
	}

	public String getResearchImage() {
		return researchImage;
	}

	public void setResearchImage(String researchImage) {
		this.researchImage = researchImage;
	}

	public String getResearchText() {
		return researchText;
	}

	public void setResearchText(String researchText) {
		this.researchText = researchText;
	}



	public String toString() {
		StringBuilder sb = new StringBuilder();
		sb.append("Id: ").append(getId()).append(", ");
		return sb.toString();
	}

}
